package interview;

import java.util.HashSet;
import java.util.Set;

public class Interview07 {
    public static void main(String[] args) {
        /**
         * Integer的坑
         * 在jdk8以后，构造方法有变化
         */
        Integer i = Integer.valueOf("111");
        /**
         * 比较方法的坑
         * 所有整型包装类对象之间值的比较，全部使用equals方法比较
         * 对于Integer var =？在-128至127之间的赋值，Integer对象在IntegerCache.cache产生
         * 会服用已有对象，这个区间内的Integer可用直接使用==进行判断，但是这个区间之外的所有数据，都会在堆上产生，
         * 并不会服用已有对象。推荐使用equals方法进行判断
         */
        Integer a = Integer.valueOf(600);
        Integer b = Integer.valueOf(600);
        int c = 600;
        System.out.println(a == b);
        System.out.println(a.equals(b));
        System.out.println(a == c);

        System.out.println("===========================");
        Integer x = Integer.valueOf(99);
        Integer y = Integer.valueOf(99);
        System.out.println(x == y);
        System.out.println(x.equals(y));

    }
}
